package la.foton.atividade.service;

import java.util.List;

import la.foton.atividade.dao.ProjetoDAO;
import la.foton.atividade.dao.ProjetoDAOImpl;
import la.foton.atividade.entity.Projeto;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service("projetoService")
public class ProjetoServiceImpl implements ProjetoService {

	@Autowired
	private ProjetoDAO projetoDAO;

	/* (non-Javadoc)
	 * @see la.foton.atividade.service.ProjetoService#getAllProjetos()
	 */
	public List<Projeto> getAll() {
		return projetoDAO.findAll(Projeto.class);
	}

	/* (non-Javadoc)
	 * @see la.foton.atividade.service.ProjetoService#createProjeto(la.foton.atividade.entity.Projeto)
	 */
	public Projeto create(Projeto projeto) {
		return projetoDAO.save(projeto);
	}

	/* (non-Javadoc)
	 * @see la.foton.atividade.service.ProjetoService#updateProjeto(la.foton.atividade.entity.Projeto)
	 */
	public void update(Projeto projeto) {
		projetoDAO.update(projeto);
	}

	/* (non-Javadoc)
	 * @see la.foton.atividade.service.ProjetoService#deleteProjeto(la.foton.atividade.entity.Projeto)
	 */
	public void delete(Projeto projeto) {
		projetoDAO.remove(projeto);
	}
	
	/* (non-Javadoc)
	 * @see la.foton.atividade.service.ProjetoService#deleteProjeto(la.foton.atividade.entity.Projeto)
	 */
	public void deleteById(Projeto projeto) {
		projetoDAO.remove(Projeto.class, projeto.getId());
	}

	/* (non-Javadoc)
	 * @see la.foton.atividade.service.ProjetoService#setDao(la.foton.atividade.dao.ProjetoDAO)
	 */
	public void setDao(ProjetoDAOImpl projetoDAO) {
		this.projetoDAO = projetoDAO;
	}

}
